for value in candidates:
    if self.dfs(new_nums + [value]):
        return True
return False